点击上方 "程序员小乐"关注公众号, 星标或置顶一起成长
每天早上8点20分, 第一时间与你相约
每日英文
Always remember that in life. Whatever we do, we are never defeated unless we give up.
永远要记住,无论我们做什么,人生从来都没有失败,唯一的失败就是自己放弃。
每日掏心话
生活就是一只看不见的储蓄罐,你投入的每一份努力都不会白费。
责编:乐乐
程序员小乐(ID:study_tech)第 633 次推文 图片来自网络
往日回顾:GitHub 标星 7k+,面试官的灵魂 50 问,问到你怀疑人生!
00 前言
trim_string() {
# Usage: trim_string " example string "
: "${1#"${1%%[![:space:]]*}"}"
: "${_%"${_##*[![:space:]]}"}"
printf '%s\n' "$_"
}
$ trim_string " Hello, World "
Hello, World
$ name=" John Black "
$ trim_string "$name"
John Black
regex() {
# Usage: regex "string" "regex"
[[ $1 =~ $2 ]] && printf '%s\n' "${BASH_REMATCH[1]}"
$ # Trim leading white-space.
$ regex ' hello' '^\s*(.*)'
hello
$ # Validate a hex color.
$ regex "#FFFFFF" '^(#?([a-fA-F0-9]{6}|[a-fA-F0-9]{3}))$'
#FFFFFF
$ # Validate a hex color (invalid).
$ regex "red" '^(#?([a-fA-F0-9]{6}|[a-fA-F0-9]{3}))$'
# no output (invalid)
is_hex_color() {
if [[ $1 =~ ^(#?([a-fA-F0-9]{6}|[a-fA-F0-9]{3}))$ ]]; then
printf '%s\n' "${BASH_REMATCH[1]}"
else
printf '%s\n' "error: $1 is an invalid color."
return 1
fi
read -r color
is_hex_color "$color" || color="#FFFFFF"
# Do stuff.
remove_array_dups() {
# Usage: remove_array_dups "array"
declare -A tmp_array
for i in "$@"; do
[[ $i ]] && IFS=" " tmp_array["${i:- }"]=1
done
printf '%s\n' "${!tmp_array[@]}"
$ remove_array_dups 1 1 2 2 3 3 3 3 3 4 4 4 4 4 5 5 5 5 5 5
1
2
3
4
5
$ arr=(red red green blue blue)
$ remove_array_dups "${arr[@]}"
red
green
blue
开源最前线(ID:OpenSourceTop) 综合整理
综合自:https://leanpub.com/u/dylanaraps、https://leanpub.com/u/dylanaraps
欢迎在留言区留下你的观点,一起讨论提高。如果今天的文章让你有新的启发,学习能力的提升上有新的认识,欢迎转发分享给更多人。
欢迎各位读者加入程序员小乐技术群,在公众号后台回复“加群”或者“学习”即可。
猜你还想看
阿里、腾讯、百度、华为、京东最新面试题汇集
不会SQL注入,连漫画都看不懂了
中美互联网科技公司对比图!你有的,我们也有!
教你用Python将图片转化为字符画!附源代码
太牛逼了,居然有人将各大编程语言绘成了一部编年史!
文章有问题?点此查看未经处理的缓存